'\" te
.\" Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
.\" Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
.\"  See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with
.\" the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH DHCP_INITTAB 5 "Oct 31, 2016"
.SH NAME
dhcp_inittab \- information repository for DHCP options
.SH DESCRIPTION
.LP
The \fB/etc/dhcp/inittab\fR and the \fB/etc/dhcp/inittab6\fR files contain
information about the Dynamic Host Configuration Protocol (\fBDHCP\fR) options,
which are network configuration parameters passed from \fBDHCP\fR servers to
\fBDHCP\fR clients when a client machine uses \fBDHCP\fR. Since many
\fBDHCP\fR-related commands must parse and understand these \fBDHCP\fR options,
this file serves as a central location where information about these options
may be obtained.
.sp
.LP
The \fBDHCP\fR \fBinittab\fR and \fBinittab6\fR files provide three general
pieces of information:
.RS +4
.TP
.ie t \(bu
.el o
A mnemonic alias, or symbol name, for each option number. For instance, option
12 is aliased to the name \fBHostname\fR. This is useful for \fBDHCP\fR-related
programs that require human interaction, such as \fBdhcpinfo\fR(1).
.RE
.RS +4
.TP
.ie t \(bu
.el o
Information about the syntax for each option. This includes information such as
the type of the value, for example, whether it is a 16-bit integer or an
\fBIP\fR address.
.RE
.RS +4
.TP
.ie t \(bu
.el o
The policy for what options are visible to which \fBDHCP\fR-related programs.
.RE
.sp
.LP
If you make any changes to the \fB/etc/dhcp/inittab\fR file, note that only
additions of or changes to \fBSITE\fR options are preserved during upgrade. For
\fB/etc/dhcp/inittab6\fR, no options are preserved during upgrade.
.sp
.LP
The \fBVENDOR\fR options defined here are intended for use by the Solaris
\fBDHCP\fR client and \fBDHCP\fR management tools. The \fBSUNW\fR vendor space
is owned by Sun, and changes are likely during upgrade. If you need to
configure the Solaris \fBDHCP\fR server to support the vendor options of a
different client, see \fBdhcptab\fR(5) for details.
.sp
.LP
Each \fBDHCP\fR option belongs to a certain category, which roughly defines the
scope of the option; for instance, an option may only be understood by certain
hosts within a given site, or it may be globally understood by all \fBDHCP\fR
clients and servers. The following categories are defined; the category names
are not case-sensitive:
.sp
.ne 2
.na
\fB\fBSTANDARD\fR\fR
.ad
.RS 12n
All client and server \fBDHCP\fR implementations agree on the semantics. These
are administered by the Internet Assigned Numbers Authority (\fBIANA\fR). These
options are numbered from \fB1\fR to \fB127\fR for IPv4 DHCP, and \fB1\fR to
\fB65535\fR for DHCPv6.
.RE

.sp
.ne 2
.na
\fB\fBSITE\fR\fR
.ad
.RS 12n
Within a specific site, all client and server implementations agree on the
semantics. However, at another site the type and meaning of the option may be
quite different. These options are numbered from \fB128\fR to \fB254\fR for
IPv4 DHCP. DHCPv6 does not support site options.
.RE

.sp
.ne 2
.na
\fB\fBVENDOR\fR\fR
.ad
.RS 12n
Each vendor may define \fB254\fR options (65536 for DHCPv6) unique to that
vendor. The vendor is identified within a \fBDHCP\fR packet by the "Vendor
Class" option, number \fB60\fR (number \fB17\fR for DHCPv6). An option with a
specific numeric identifier belonging to one vendor will, in general, have a
type and semantics different from that of a different vendor. Vendor options
are "super-encapsulated" into the vendor field number \fB43\fR, as defined in
\fIRFC 2132\fR for IPv4 DHCP, and number \fB17\fR as defined in RFC 3315 for
DHCPv6. The \fB/etc/dhcp/inittab\fR file contains only Sun vendor options.
Define non-Sun vendor options in the \fBdhcptab\fR file.
.RE

.sp
.ne 2
.na
\fB\fBFIELD\fR\fR
.ad
.RS 12n
This category allows the fixed fields within a \fBDHCP\fR packet to be aliased
to a mnemonic name for use with \fBdhcpinfo\fR(1).
.RE

.sp
.ne 2
.na
\fB\fBINTERNAL\fR\fR
.ad
.RS 12n
This category is internal to the Solaris \fBDHCP\fR implementation and will not
be further defined.
.RE

.SS "DHCP \fBinittab\fR and \fBinittab6\fR Format"
.LP
Data entries are written one per line and have seven fields; each entry
provides information for one option. Each field is separated by a comma, except
for the first and second, which are separated by whitespace (as defined in
\fBisspace\fR(3C)). An entry cannot be continued onto another line. Blank lines
and those whose first non-whitespace character is '#' are ignored.
.sp
.LP
The fields, in order, are:
.RS +4
.TP
.ie t \(bu
.el o
Mnemonic Identifier
.sp
The Mnemonic Identifier is a user-friendly alias for the option number; it is
not case sensitive. This field must be per-category unique and should be unique
across all categories. The option names in the \fBSTANDARD\fR, \fBSITE\fR, and
\fBVENDOR\fR spaces should not overlap, or the behavior will be undefined. See
\fBMnemonic Identifiers for Options\fR section of this man page for
descriptions of the option names.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Category (scope)
.sp
The Category field is one of \fBSTANDARD\fR, \fBSITE\fR, \fBVENDOR\fR,
\fBFIELD\fR, or \fBINTERNAL\fR and identifies the scope in which the option
falls. \fBSITE\fR is not used in \fBinittab6\fR.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Option Number
.sp
The Option Number is the number of this option when it is in a \fBDHCP\fR
packet. This field should be per-category unique and the \fBSTANDARD\fR and
\fBSITE\fR fields should not have overlapping code fields or the behavior is
undefined.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Data Type
.sp
Data Type is one of the following values, which are not case sensitive:
.RS

.sp
.ne 2
.na
\fB\fBAscii\fR\fR
.ad
.RS 13n
A printable character string
.RE

.sp
.ne 2
.na
\fBBool\fR
.ad
.RS 13n
Has no value. Scope limited to category limited to \fBINTERNAL\fR. Presence of
an option of this type within a Solaris configuration file represents
\fBTRUE\fR, absence represents \fBFALSE\fR.
.RE

.sp
.ne 2
.na
\fB\fBOctet\fR\fR
.ad
.RS 13n
An array of bytes
.RE

.sp
.ne 2
.na
\fB\fBUnumber8\fR\fR
.ad
.RS 13n
An 8-bit unsigned integer
.RE

.sp
.ne 2
.na
\fB\fBSnumber8\fR\fR
.ad
.RS 13n
An 8-bit signed integer
.RE

.sp
.ne 2
.na
\fB\fBUnumber16\fR\fR
.ad
.RS 13n
A 16-bit unsigned integer
.RE

.sp
.ne 2
.na
\fB\fBSnumber16\fR\fR
.ad
.RS 13n
A 16-bit signed integer
.RE

.sp
.ne 2
.na
\fB\fBUnumber24\fR\fR
.ad
.RS 13n
A 24-bit unsigned integer
.RE

.sp
.ne 2
.na
\fB\fBUnumber32\fR\fR
.ad
.RS 13n
A 32-bit unsigned integer
.RE

.sp
.ne 2
.na
\fB\fBSnumber32\fR\fR
.ad
.RS 13n
A 32-bit signed integer
.RE

.sp
.ne 2
.na
\fB\fBUnumber64\fR\fR
.ad
.RS 13n
A 64-bit unsigned integer
.RE

.sp
.ne 2
.na
\fB\fBSnumber64\fR\fR
.ad
.RS 13n
A 64-bit signed integer
.RE

.sp
.ne 2
.na
\fB\fBIp\fR\fR
.ad
.RS 13n
An \fBIPv4\fR address
.RE

.sp
.ne 2
.na
\fB\fBIpv6\fR\fR
.ad
.RS 13n
An \fBIPv6\fR address
.RE

.sp
.ne 2
.na
\fB\fBDuid\fR\fR
.ad
.RS 13n
An RFC 3315 Unique Identifier
.RE

.sp
.ne 2
.na
\fB\fBDomain\fR\fR
.ad
.RS 13n
An RFC 1035-encoded domain name
.RE

.RE

The data type field describes an indivisible unit of the option payload, using
one of the values listed above.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Granularity
.sp
The Granularity field describes how many indivisible units in the option
payload make up a whole value or item for this option. The value must be
greater than zero (\fB0\fR) for any data type other than Bool, in which case it
must be zero (\fB0\fR).
.RE
.RS +4
.TP
.ie t \(bu
.el o
Maximum Number Of Items
.sp
This value specifies the maximum items of  Granularity which  are permissible
in a definition using this symbol. For example, there can only  be  one  IP
address specified for a subnet mask, so the  Maximum number of            items
in this case is one (\fB1\fR).  A   Maximum  value  of zero (\fB0\fR) means
that a variable number of items is permitted.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Visibility
.sp
The Visibility field specifies which \fBDHCP\fR-related programs make use of
this information, and should always be defined as \fBsdmi\fR for newly added
options.
.RE
.SS "Mnemonic Identifiers for IPv4 Options"
.LP
The following table maps the mnemonic identifiers used in Solaris DHCP to
\fIRFC 2132\fR options:
.sp

.sp
.TS
c c c
l l l .
\fISymbol\fR	\fICode\fR	\fIDescription\fR
_
\fBSubnet\fR	\fB1\fR	T{
Subnet Mask, dotted Internet address (IP).
T}
\fBUTCoffst\fR	\fB2\fR	T{
Coordinated Universal time offset (seconds) [deprecated].
T}
\fBRouter\fR	\fB3\fR	List of Routers, IP.
\fBTimeserv\fR	\fB4\fR	List of RFC-868 servers, IP.
\fBIEN116ns\fR	\fB5\fR	List of IEN 116 name servers, IP.
\fBDNSserv\fR	\fB6\fR	List of DNS name servers, IP.
\fBLogserv\fR	\fB7\fR	List of MIT-LCS UDP log servers, IP.
\fBCookie\fR	\fB8\fR	List of RFC-865 cookie servers, IP.
\fBLprserv\fR	\fB9\fR	T{
List of RFC-1179 line printer servers, IP.
T}
\fBImpress\fR	\fB10\fR	List of Imagen Impress servers, IP.
\fBResource\fR	\fB11\fR	T{
List of RFC-887 resource location servers, IP.
T}
\fBHostname\fR	\fB12\fR	T{
Client's hostname, value from hosts database.
T}
\fBBootsize\fR	\fB13\fR	T{
Number of 512 octet blocks in boot image, NUMBER.
T}
\fBDumpfile\fR	\fB14\fR	T{
Path where core image should be dumped, ASCII.
T}
\fBDNSdmain\fR	\fB15\fR	DNS domain name, ASCII.
\fBSwapserv\fR	\fB16\fR	Client's swap server, IP.
\fBRootpath\fR	\fB17\fR	Client's Root path, ASCII.
\fBExtendP\fR	\fB18\fR	Extensions path, ASCII.
\fBIpFwdF\fR	\fB19\fR	IP Forwarding Enable/Disable, NUMBER.
\fBNLrouteF\fR	\fB20\fR	Non-local Source Routing, NUMBER.
\fBPFilter\fR	\fB21\fR	Policy Filter, IP.
\fBMaxIpSiz\fR	\fB22\fR	T{
Maximum datagram Reassembly Size, NUMBER.
T}
\fBIpTTL\fR	\fB23\fR	T{
Default IP Time to Live, (1=<x<=255), NUMBER.
T}
\fBPathTO\fR	\fB24\fR	RFC-1191 Path MTU Aging Timeout, NUMBER.
\fBPathTbl\fR	\fB25\fR	RFC-1191 Path MTU Plateau Table, NUMBER.
\fBMTU\fR	\fB26\fR	Interface MTU, x>=68, NUMBER.
\fBSameMtuF\fR	\fB27\fR	All Subnets are Local, NUMBER.
\fBBroadcst\fR	\fB28\fR	Broadcast Address, IP.
\fBMaskDscF\fR	\fB29\fR	Perform Mask Discovery, NUMBER.
\fBMaskSupF\fR	\fB30\fR	Mask Supplier, NUMBER.
\fBRDiscvyF\fR	\fB31\fR	Perform Router Discovery, NUMBER.
\fBRSolictS\fR	\fB32\fR	Router Solicitation Address, IP.
\fBStaticRt\fR	\fB33\fR	T{
Static Route, Double IP (network router).
T}
\fBTrailerF\fR	\fB34\fR	Trailer Encapsulation, NUMBER.
\fBArpTimeO\fR	\fB35\fR	ARP Cache Time out, NUMBER.
\fBEthEncap\fR	\fB36\fR	Ethernet Encapsulation, NUMBER.
\fBTcpTTL\fR	\fB37\fR	TCP Default Time to Live, NUMBER.
\fBTcpKaInt\fR	\fB38\fR	TCP Keepalive Interval, NUMBER.
\fBTcpKaGbF\fR	\fB39\fR	TCP Keepalive Garbage, NUMBER.
\fBNISdmain\fR	\fB40\fR	NIS Domain name, ASCII.
\fBNISservs\fR	\fB41\fR	List of NIS servers, IP.
\fBNTPservs\fR	\fB42\fR	List of NTP servers, IP.
\fBNetBNms\fR	\fB44\fR	List of NetBIOS Name servers, IP.
\fBNetBDsts\fR	\fB45\fR	T{
List of NetBIOS Distribution servers, IP.
T}
\fBNetBNdT\fR	\fB46\fR	T{
NetBIOS Node type (1=B-node, 2=P, 4=M, 8=H).
T}
\fBNetBScop\fR	\fB47\fR	NetBIOS scope, ASCII.
\fBXFontSrv\fR	\fB48\fR	List of X Window Font servers, IP.
\fBXDispMgr\fR	\fB49\fR	List of X Window Display managers, IP.
\fBLeaseTim\fR	\fB51\fR	Lease Time Policy, (-1 = PERM), NUMBER.
\fBMessage\fR	\fB56\fR	T{
Message to be displayed on client, ASCII.
T}
\fBT1Time\fR	\fB58\fR	Renewal (T1) time, NUMBER.
\fBT2Time\fR	\fB59\fR	Rebinding (T2) time, NUMBER.
\fBNW_dmain\fR	\fB62\fR	NetWare/IP Domain Name, ASCII.
\fBNWIPOpts\fR	\fB63\fR	T{
NetWare/IP Options, OCTET (unknown type).
T}
\fBNIS+dom\fR	\fB64\fR	NIS+ Domain name, ASCII.
\fBNIS+serv\fR	\fB65\fR	NIS+ servers, IP.
\fBTFTPsrvN\fR	\fB66\fR	TFTP server hostname, ASCII.
\fBOptBootF\fR	\fB67\fR	Optional Bootfile path, ASCII.
\fBMblIPAgt\fR	\fB68\fR	Mobile IP Home Agent, IP.
\fBSMTPserv\fR	\fB69\fR	T{
Simple Mail Transport Protocol Server, IP.
T}
\fBPOP3serv\fR	\fB70\fR	Post Office Protocol (POP3) Server, IP.
\fBNNTPserv\fR	\fB71\fR	T{
Network News Transport Proto. (NNTP) Server, IP.
T}
\fBWWWservs\fR	\fB72\fR	Default WorldWideWeb Server, IP.
\fBFingersv\fR	\fB73\fR	Default Finger Server, IP.
\fBIRCservs\fR	\fB74\fR	Internet Relay Chat Server, IP.
\fBSTservs\fR	\fB75\fR	StreetTalk Server, IP.
\fBSTDAservs\fR	\fB76\fR	StreetTalk Directory Assist. Server, IP.
\fBUserClas\fR	\fB77\fR	User class information, ASCII.
\fBSLP_DA\fR	\fB78\fR	Directory agent, OCTET.
\fBSLP_SS\fR	\fB79\fR	Service scope, OCTET.
\fBClientFQDN\fR	\fB81\fR	Fully Qualified Domain Name, OCTET.
\fBAgentOpt\fR	\fB82\fR	Agent circuit ID, OCTET.
\fBFQDN\fR	\fB89\fR	Fully Qualified Domain Name, OCTET.
\fBPXEarch\fR	\fB93\fR	Client system architecture, NUMBER.
\fBBootFile\fR	\fBN/A\fR	File to Boot, ASCII.
\fBBootPath\fR	\fBN/A\fR	T{
Boot path prefix to apply to client's requested boot file, ASCII.
T}
\fBBootSrvA\fR	\fBN/A\fR	Boot Server, IP.
\fBBootSrvN\fR	\fBN/A\fR	Boot Server Hostname, ASCII.
\fBEchoVC\fR	\fBN/A\fR	T{
Echo Vendor Class Identifier Flag, (Present=\fBTRUE\fR)
T}
\fBLeaseNeg\fR	\fBN/A\fR	Lease is Negotiable Flag, (Present=\fBTRUE\fR)
.TE

.SS "Mnemonic Identifiers for IPv6 Options"
.LP
The following table maps the mnemonic identifiers used in Solaris DHCP to RFC
3315, 3319, 3646, 3898, 4075, and 4280 options:
.sp

.sp
.TS
c c c
l l l .
\fISymbol\fR	\fICode\fR	\fIDescription\fR
_
\fBClientID\fR	\fB1\fR	Unique identifier for client, DUID
\fBServerID\fR	\fB2\fR	Unique identifier for server, DUID
\fBPreference\fR	\fB7\fR	Server preference, NUMBER
\fBUnicast\fR	\fB12\fR	Unicast server address, IPV6
\fBUserClass\fR	\fB15\fR	User classes for client, OCTET
\fBVendorClass\fR	\fB16\fR	Vendor client hardware items, OCTET
\fBSIPNames\fR	\fB21\fR	SIP proxy server name list, DOMAIN
\fBSIPAddresses\fR	\fB22\fR	T{
SIP proxy server addresses in preference order, IPV6
T}
\fBDNSAddresses\fR	\fB23\fR	T{
DNS server addresses in preference order, IPV6
T}
\fBDNSSearch\fR	\fB24\fR	DNS search list, DOMAIN
\fBNISServers\fR	\fB27\fR	T{
NIS server addresses in preference order, IPV6
T}
\fBNIS+Servers\fR	\fB28\fR	T{
NIS+ server addresses in preference order, IPV6
T}
\fBNISDomain\fR	\fB29\fR	NIS domain name, DOMAIN
\fBNIS+Domain\fR	\fB30\fR	NIS+ domain name, DOMAIN
\fBSNTPServers\fR	\fB31\fR	IPV6
\fBInfoRefresh\fR	\fB32\fR	UNUMBER32
\fBBCMCDomain\fR	\fB33\fR	T{
Broadcast/multicast control server name list, DOMAIN
T}
\fBBCMCAddresses\fR	\fB34\fR	T{
Broadcast/multicast control server addresses, IPV6
T}
.TE

.SH EXAMPLES
.LP
\fBExample 1 \fRAltering the DHCP \fBinittab\fR File
.sp
.LP
In general, the \fBDHCP\fR \fBinittab\fR file should only be altered to add
\fBSITE\fR options. If other options are added, they will not be automatically
carried forward when the system is upgraded. For instance:

.sp
.in +2
.nf
ipPairs    SITE, 132, IP, 2, 0, sdmi
.fi
.in -2

.sp
.LP
describes an option named \fBipPairs\fR, that is in the \fBSITE\fR  category.
That is, it is defined by each individual site, and is  option code 132, which
is of type \fBIP\fR Address, consisting  of a potentially infinite number of
pairs of \fBIP\fR addresses.

.SH FILES
.in +2
\fB/etc/dhcp/inittab\fR
.in -2
.br
.in +2
\fB/etc/dhcp/inittabv6\fR
.in -2
.SH ATTRIBUTES
.LP
See \fBattributes\fR(7)  for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Committed
.TE

.SH SEE ALSO
.LP
.BR dhcpinfo (1),
.BR isspace (3C),
.BR dhcptab (5),
.BR attributes (7),
.BR dhcp (7),
.BR dhcp_modules (7),
.BR dhcpagent (8)
.sp
.LP
\fISystem Administration Guide: IP Services\fR
.sp
.LP
Alexander, S., and R. Droms. \fIRFC 2132, DHCP Options and BOOTP Vendor
Extensions\fR. Network Working Group. March 1997.
.sp
.LP
Droms, R. \fI RFC 2131, Dynamic Host Configuration Protocol\fR. Network Working
Group. March 1997.
.sp
.LP
Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
(DHCPv6)\fR. Cisco Systems. July 2003.
.sp
.LP
Schulzrinne, H., and B. Volz. \fIRFC 3319, Dynamic Host Configuration Protocol
(DHCPv6) Options for Session Initiation Protocol (SIP) Servers\fR. Columbia
University and Ericsson. July 2003.
.sp
.LP
Droms, R. \fIRFC 3646, DNS Configuration options for Dynamic Host Configuration
Protocol for IPv6 (DHCPv6)\fR. Cisco Systems. December 2003.
.sp
.LP
Kalusivalingam, V. \fIRFC 3898, Network Information Service (NIS) Configuration
Options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6)\fR. Cisco
Systems. October 2004.
.sp
.LP
Chowdhury, K., P. Yegani, and L. Madour. \fIRFC 4280, Dynamic Host
Configuration Protocol (DHCP) Options for Broadcast and Multicast Control
Servers\fR. Starent Networks, Cisco Systems, and Ericsson. November 2005.
.sp
.LP
Mockapetris, P.V. \fIRFC 1035, Domain names - implementation and
specification\fR. ISI. November 1987.
